package com.reliable.service.enums;

/**
 * 邀请码使用状态枚举
 */
public enum ReliableInviteUseStatus {
    /**
     * 已使用
     */
    USED(1L, "已使用"),


    /**
     * 未使用
     */
    UNUSED(2L, "未使用");

    private final Long code;
    private final String description;

    ReliableInviteUseStatus(Long code, String description) {
        this.code = code;
        this.description = description;
    }

    public Long getCode() {
        return code;
    }

    public String getDescription() {
        return description;
    }

    /**
     * 根据code获取枚举对象
     *
     * @param code 状态码
     * @return 对应的枚举对象
     */
    public static ReliableInviteUseStatus fromCode(Long code) {
        for (ReliableInviteUseStatus status : ReliableInviteUseStatus.values()) {
            if (status.getCode().equals(code)) {
                return status;
            }
        }
        throw new IllegalArgumentException("无效的状态码: " + code);
    }
}
